loader 执行顺序
执行顺序
相同优先级的 loader 执行顺序为:从右到左,从下到上
。(pitch 情况下,则反过来) 4 类 loader 的执行优级为:pre > normal > inline > post
。
js
const compose =
(...fns) =>
(x) =>
fns.reduceRight((v, f) => f(v), x);
enforce 类型
post(后置)+inline(内联)+normal(正常)+pre(前置)可以通过 enforce 属性去改变执行顺序
enforce:‘pre’ 前置 权重最高 enforce:‘normal’ 不变 权重第二 enforce:‘inline’ 行内 权重第三 enforce:‘post’ 后置 权重第四
前缀的作用
内联 loader 可以通过添加不同前缀,跳过其他类型 loader。
!
跳过 normal -!
跳过 pre 和 normal !!
跳过 pre、 normal 和 post
这些前缀在很多场景下非常有用
例子
md
pitch-post-loader1.js
pitch-post-loader2.js
pitch-inline-loader1.js
pitch-inline-loader2.js
pitch-normal-loader1.js
pitch-normal-loader2.js
pitch-pre-loader1.js
pitch-pre-loader2.js
pre-loader2
pre-loader1
normal-loader2
normal-loader1
inline-loader2
inline-loader1
post-loadder2
post-loadder1